#虚拟资金，即客户打款后，赠予客户的资金
class CreateGrants < ActiveRecord::Migration
  def self.up
    create_table :grants do |t|
      t.integer :company_id        ,:null => false   #所属公司的ID。
      t.integer :department_id     ,:null => false   #操作此功能的员工所在的部门ID
      t.integer :employee_id       ,:null => false   #操作此功能的员工ID
      t.integer :seq_number    , :default => 0 ,:null => false  #流水号
      t.string  :order_number  , :default => 0 ,:null => false  #单号
      t.integer :receivable_id                       #预收ID，每一个虚拟资金一定要跟随预收。
      t.integer :sales_strategy_id                   #销售策略决定的赠款
      t.string  :auditing_status   ,:default => ''   #审批状态
      t.integer :auditor_id                          #审批人
      t.string  :audit_opinion                       #审批时的意见
      t.date    :begin_date                          #起效日期。
      t.date    :end_date                            #失效日期。
      t.decimal :amount       , :precision => 10, :scale => 2  ,:default => 0    #金额
      t.decimal :new_amount   , :precision => 10, :scale => 2  ,:default => 0    #如果是编辑，编辑时当前的金额
      t.text :description                            #详述
      t.integer :is_locked     ,:limit => 1   ,:default => 0 #锁定 1为True 0为False
      t.integer :lock_version  ,:default => 0   #乐观锁
      t.timestamps
    end
  end

  def self.down
    drop_table :grants
  end
end
